return self;
}
-GskVulkanImage *
-gsk_vulkan_image_new_from_texture (GskVulkanUploader *uploader,
- GdkTexture *texture)
-{
- GdkTextureDownloader *downloader;
- GskVulkanImage *result;
- GskVulkanImageMap map;
-
- downloader = gdk_texture_downloader_new (texture);
- result = gsk_vulkan_image_new_for_upload (uploader->vulkan,
- gdk_texture_get_format (texture),
- gdk_texture_get_width (texture),
- gdk_texture_get_height (texture));
- gdk_texture_downloader_set_format (downloader, result->format);
- gsk_vulkan_image_map_memory (result, uploader, GSK_VULKAN_WRITE, &map);
- gdk_texture_downloader_download_into (downloader, map.data, map.stride);
- gsk_vulkan_image_unmap_memory (result, uploader, &map);
- gdk_texture_downloader_free (downloader);
- return result;
-}
-
GskVulkanImage *
gsk_vulkan_image_new_for_upload (GdkVulkanContext *context,
GdkMemoryFormat format,
}
}
-GskVulkanImage *
-gsk_vulkan_renderer_ref_texture_image (GskVulkanRenderer *self,
- GdkTexture *texture,
- GskVulkanUploader *uploader)
-{
- GskVulkanImage *image;
-
- image = gsk_vulkan_renderer_get_texture_image (self, texture);
- if (image)
- return g_object_ref (image);
-
- image = gsk_vulkan_image_new_from_texture (uploader, texture);
-
- gsk_vulkan_renderer_add_texture_image (self, texture, image);
-
- return image;
-}
-
GskVulkanGlyphCache *
gsk_vulkan_renderer_get_glyph_cache (GskVulkanRenderer *self)
{
void gsk_vulkan_renderer_add_texture_image (GskVulkanRenderer *self,
GdkTexture *texture,
GskVulkanImage *image);
-GskVulkanImage * gsk_vulkan_renderer_ref_texture_image (GskVulkanRenderer *self,
- GdkTexture *texture,
- GskVulkanUploader *uploader);
GskVulkanCachedGlyph *gsk_vulkan_renderer_cache_glyph (GskVulkanRenderer *renderer,
PangoFont *font,